home *** CD-ROM | disk | FTP | other *** search
- #include "llo.h"
-
- // LIBRARY
- #define LLO_LIBRARY_IMAGE 0x01000000
-
- // CLASSES
- #define LLI_CLASS_APPLICATION LLO_LIBRARY_IMAGE + 0x000000
- #define LLI_CLASS_IMAGE LLO_LIBRARY_IMAGE + 0x010000
-
- // IMAGE APPLICATION
- #define LLI_APPLICATION_VERSION LLI_CLASS_APPLICATION + 0x0001
- #define LLI_APPLICATION_IDLE LLI_CLASS_APPLICATION + 0x0101
- #define LLI_APPLICATION_IDLE_REPEAT LLI_CLASS_APPLICATION + 0x0102
-
- // IMAGE CLASS
- #define LLI_IMAGE_WIDTH LLI_CLASS_IMAGE + 0x0001
- #define LLI_IMAGE_HEIGHT LLI_CLASS_IMAGE + 0x0002
- #define LLI_IMAGE_COLORS LLI_CLASS_IMAGE + 0x0003
- #define LLI_IMAGE_DENSITY LLI_CLASS_IMAGE + 0x0004
- #define LLI_IMAGE_BITS LLI_CLASS_IMAGE + 0x0005
-
-
- // Memory devices types ------------------------------------------------------
- #define LLI_MEMORY 1 // Memory Device
- #define LLI_MEMORY_BW 1 // 1 bit / pixels
- #define LLI_MEMORY_16 4 // 4 bits / pixels
- #define LLI_MEMORY_256 8 // 8 bits / pixels
- #define LLI_MEMORY_16M 24 //24 bits / pixels
-
-
-
- // Screen devices types ------------------------------------------------------
- #define LLI_SCREEN 2 // Screen Device
- #define LLI_SCREEN_WINDOW_HANDLE 100 // Screen Device / Windows
- #define LLI_SCREEN_DEVICE_CONTEXT 200 // Screen Device / Device Context
-
- #define LLI_SCREEN_DESKTOP 1
- #define LLI_SCREEN_WINDOW 2
- #define LLI_SCREEN_CLIENT_AREA 3
-
- // Disk devices types --------------------------------------------------------
- #define LLI_DISK 3 // Disk device
- #define LLI_DISK_BMP 100 // BMP file format
- #define LLI_DISK_TIF 200 // TIF file format
- #define LLI_DISK_PCX 300 // PCX file format
- #define LLI_DISK_GIF 400 // GIF file format
- #define LLI_DISK_JPG 500 // JPG file format
-
-
- // ─┐ | IMAGE | IMAGE | LLIBI |
- // Mono-color-lib availability ├──> | B&W | COLOR | VERSION |
- // ─┘ | | | |
- #define LLI_DISK_COMPRESS_NIL 1 // No compression for BMP or TIF | YES | YES | STD-PRO |
- #define LLI_DISK_COMPRESS_AUTO 000 // Automatic best compression format | YES | YES | STD-PRO |
- #define LLI_DISK_COMPRESS_RLE 100 // Run lenght encoding for TIF or PCX | YES | YES | STD-PRO |
- #define LLI_DISK_COMPRESS_CCITT1D 110 // Modified Huffman for TIF | YES | NO | STD-PRO |
- #define LLI_DISK_COMPRESS_PCKBIT 120 // Packed bits for TIF | YES | NO | STD-PRO |
- #define LLI_DISK_COMPRESS_CCITTG3 130 // Group 3 for TIF 1D | YES | NO | PRO |
- #define LLI_DISK_COMPRESS_CCITTG4 140 // Group 4 for TIF | YES | NO | PRO |
- #define LLI_DISK_COMPRESS_LZW 160 // Lempel for TIF | YES | YES | PRO |
- #define LLI_DISK_COMPRESS_JPEG 170 // JPEG for JPG | NO | YES | PRO |
-
-
- // Printer devices types -----------------------------------------------------
- #define LLI_PRINTER 4 // Printer device
-
- #define LLI_PRINTER_LPT1 1 // Print to LPT1
- #define LLI_PRINTER_LPT2 2 // Print to LPT2
- #define LLI_PRINTER_LPT3 3 // Print to LPT3
-
- // Scanner devices types -----------------------------------------------------
- #define LLI_SCANNER 5 // Scanning device
- #define LLI_SCANNER_HP_BW 100 // HP SCANJET Black & White
- #define LLI_SCANNER_HP_DITHERED_4 110 // HP SCANJET dithering 4x4 Text
- #define LLI_SCANNER_HP_DITHERED_8 111 // HP SCANJET dithering 8x8 Photos
- #define LLI_SCANNER_HP_GRAY_256 120 // HP SCANJET 256 Gray Levels
- #define LLI_SCANNER_HP_COLOR_256 130 // HP SCANJET 256 Colors
- #define LLI_SCANNER_TWAIN 200 // Twain
-
- // Multi purposes -------------------------------------------------------------
- #define LLI_FULL_SIZE -1 // Mean max size for a document
-
- #define LLI_DPI_75 75 // 75 Dots per inches density
- #define LLI_DPI_100 100 // 100 Dots per inches density
- #define LLI_DPI_150 150 // 150 Dots per inches density
- #define LLI_DPI_300 300 // 300 Dots per inches density
- #define LLI_DPI_600 600 // 600 Dots per inches density
- #define LLI_DPI_1200 1200 // 1200 Dots per inches density
-
- // Idle call modes ------------------------------------------------------------
- #define LLI_IDLE_INIT 10 // Init phase for a Light Lib Images function execution
- #define LLI_IDLE_IDLE 20 // Idle phase for a Light Lib Images function execution
- #define LLI_IDLE_EXIT 30 // Exit phase for a Light Lib Images function execution
-
- // Idle return modes
- #define LLI_IDLE_CONT 1 // Idle function continue message for Light Lib Images functions
- #define LLI_IDLE_ABORT 0 // Idle function abort message for Light Lib Images functions
-
- // Action caller defines
- #define LLI_CALLER_GET 10 //
- #define LLI_CALLER_PUT 20 //
- #define LLI_CALLER_COPY 30 //
-
- // iCopy Modes
- #define LLI_COPY_CLONE 10 // iCopy() clone message
- #define LLI_COPY_ZOOM 20 // iCopy() zoom message
- #define LLI_COPY_TURN 30 // iCopy() turn message
- #define LLI_COPY_QUANTIZE 40 // iCopy() Quantize message
-
- #define LLI_SCALE_GRAY 50
- #define LLI_SCALE_COLOR 51
-
- #define LLI_DITHER_ON 60
- #define LLI_DITHER_OFF 61
-
- #define LLI_TURN_90 90 // iCopy(LLI_COPY_TURN) 90°
- #define LLI_TURN_180 180 // iCopy(LLI_COPY_TURN) 180°
- #define LLI_TURN_270 270 // iCopy(LLI_COPY_TURN) 270°
-
- // Palettes
- #define LLI_PALETTE_SHARED 0x1000
- #define LLI_PALETTE_EXCLUSIVE 0x2000
-
- /***************************************************************************/
- /******************************* Functions *********************************/
- /***************************************************************************/
-
- typedef DWORD ( EXPORTED * LLI_IDLE )
- (
- DWORD dwType,
- long lParam,
- LLOBJECT lloImage,
- DWORD dwAction,
- DWORD dwDevice,
- DWORD dwFormat,
- DWORD dwUdfParam
- );
-
-
- LLOBJECT EXPORTED
- iGet (
- LLOBJECT lloOwner,
- DWORD dwDevice,
- DWORD dwFormat,
- int iX1,
- int iY1,
- int iX2,
- int iY2,
- DWORD dwPar1,
- DWORD dwPar2,
- DWORD dwPar3,
- DWORD dwPar4,
- DWORD dwPar5,
- DWORD dwUdfParam
- );
-
- DWORD EXPORTED
- iPut (
- LLOBJECT lloImage,
- int iX1,
- int iY1,
- int iX2,
- int iY2,
- DWORD dwDevice,
- DWORD dwFormat,
- int iXr,
- int iYr,
- DWORD dwPar1,
- DWORD dwPar2,
- DWORD dwPar3,
- DWORD dwPar4,
- DWORD dwPar5,
- DWORD dwUdfParam
- );
-
- LLOBJECT EXPORTED
- iCopy (
- LLOBJECT lloImgSrc,
- int iX1,
- int iY1,
- int iX2,
- int iY2,
- DWORD dwType,
- DWORD dwPar1,
- DWORD dwPar2,
- DWORD dwPar3,
- DWORD dwPar4,
- DWORD dwPar5,
- DWORD dwUdfParam
- );
-